Serverless Architecture Talks にて IoT + Serverless で登壇しました #gunosybeer
藤本です。
昨日、Gunosyさん主催のServerless Architecture Talksに登壇しました。Demoに時間を使いすぎ、時間足りなくなって発表を打ち切られてしまいました。ご来場いただいた方、すみませんでした。このブログでお話しきれなかった部分を説明させていただきます。
発表内容
夏休みにセンサーデバイス + AWSのマネージドサービスを利用してIoTデビューしました。その中でいくつかのマネージドサービスを利用してみて、それぞれのマネージドサービスによって何が嬉しいのかまとめてみました。
自由研究内容
- センサーデータの可視化
- Elasticsearch に収集したデータを Kibana のダッシュボードで可視化しました。
- センサーの擬人化(せんさーたぐたん)
- センサーデータの数値によって、LINE BOT で発話するようにしました。
今回の登壇では前者のセンサーデータの可視化についてご説明させていただきました。
Amazon Elasticsearch Service
今回は可視化・ダッシュボードの用途で、Elasticsearch + Kibana を利用しました。
Amazon Elasticsearch Service は AWS が提供するマネージドサービスです。障害発生時は自動復旧、バックアップは自動で日次取得、モニタリングは CloudWatch でCPU使用率やインスタンスステータスに加えて、Elasticsearch特有の Java Heap やドキュメント数などをメトリクスとして持ちます。
利用可能なAPIの制限、デフォルトインストール済みのプラグイン以外の導入不可などいくつかの制約はありますが、IoT のようなセンサーデバイスから送られるシンプルな数値データの可視化が目的であれば、それらの制約が問題になることはそこまで多くないと考えています。
Amazon Elasticsearch Service に関してはまとめたエントリがありますので以下をご参照ください。
AWS再入門 Amazon Elasticsearch Service編
AWS IoT
IoT プラットフォームではデバイス数が数千、数万といったレベルに増加することが想定されます。AWS IoT のデバイスゲートウェイは10億台以上のデバイスが接続できるように自動でスケールします。他にも AWS IoT を利用する理由はたくさんあります。
以下のエントリがまとまっていて分かりやすいので是非ご参照ください。
他にも AWS IoT のエントリはたくさんありますのでご参照ください。
Amazon Kinesis Firehose
Amazon Kinesis Firehose の話は弊社鈴木の登壇でもKinesisでいい感じにサーバレス説明がありましたのでこちらをご参照いただければと思います。
Amazon Elasticsearch Service とのインテグレーションに関していくつか補足させていただきます。
AWS IoT から Amazon Elasticsearch Service へ直接データを流し込むことができます。ただ、Kinesis Firehose を間に挟むことで接続失敗時のリトライ、インデキシングに失敗したデータのS3へのバックアップの機能が提供され、データロストの可能性を限りなく下げることができます。
また AWS IoT からのインデキシングの場合、インデックス名のローテーションができないため、一つのインデックスに延々とデータが増え続け、データ量の増加、パフォーマンスの劣化の影響が発生します。Kinesis Firehose を利用することで日次、月次といったインデックスのローテーションができるため、Curator などを利用することで古いインデックスを削除したり、クローズしたりすることができます。
Amazon Kinesis Firehose と Amazon Elasticsearch Service のインテグレーションに関してまとめたエントリがありますのでご参照ください。
【新機能】Amazon Kinesis Firehoseの出力先にAmazon Elasticsearch Serviceが追加されました
まとめ
IoT をやってみて思ったのは、リアルな情報とITを組み合わさることが非常に楽しいです。しかもそれをデバイスとAWSのサービスがあれば、ほぼ弊社のブログをいくつか読めば簡単に始められました。今回はデバイス → AWS で終わりましたが、デバイス → AWS → デバイス といった双方のコミュニケーションもやってみたいと思います。
最後に主催の Gunosy の方々、会場をご提供いただいた AWS の方々、ありがとうございました。お疲れ様でした。また参加者の方々、登壇ではタイムアップにより、全てをお話することができず、すみませんでした。